/*
public class Main {
    public static void main(String[] args) {
        System.out.println("Hello world!");
    }
}
*/

/*class MyClass {
    public static void main(String[ ] args) {
        int x = 10, y = 5;
        boolean flag;
        flag = x < y;
        System.out.print(flag);
    }
}

class Main {
    public static void main(String[] args) {
        //put your code here

        System.out.print(myVar);
    }
}




class Main {
    public static void main(String[] args) {
        //put your code here
        short n1 = 100, n2 = 200, n3 = 300;
        System.out.println(n1);
        System.out.println(n2);
        System.out.println(n3);
        System.out.println(n1 + "\n" + n2 + "\n" +n3);
        System.out.print(n1 + " " + n2 + " " +n3);

    }
}

public class Main {
    public static void main(String[] args) {
        short year = 2021;
        float pi = 3.1415f;
        String lang = "Java";
        boolean result = 5 < 10;
        System.out.println(year);
        System.out.println(pi);
        System.out.println(lang);
        System.out.println(result);
    }
}
*/

import java.util.Scanner;

public class Main {
    public static void main(String[] args) {
        Scanner sc = new Scanner(System.in);
        /*
        Ввести объект int: nextInt()
        Ввести объект float: nextFloat()
        Ввести объект double: nextDouble()
        Ввести объект boolean: nextBoolean()
        Ввести строку целиком: nextLine()
        Ввести слово (считывается до первого пробела): next()
         */

        System.out.print("Введите вашу строку: ");
        String inFromUser = sc.nextLine();
        System.out.println(inFromUser);
        /*
        Чтобы получить несколько объектов данных с входящего потока,
        достаточно одного объекта сканера. Единственный сканер может
        обрабатывать входные данные различных типов:
         */
        int x = sc.nextInt();
        double y = sc.nextDouble();
        String s = sc.nextLine();
        /*
        После использования сканер желательно закрыть командой sc.close().
        На потоке System.in незакрытый сканер чаще всего ни на что не влияет,
        однако, в реальной практике, при работе с другими потоками (файл, драйвер, сетевой ресурс и т.д.)
        незакрытый сканер может привести к утечке памяти.
         */
        sc.close();
    }
}

